/**
 * 
 */
package com.haizhi.service.impl;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Service;

import com.haizhi.bean.QTbProductData;
import com.haizhi.bean.TbProduct;
import com.haizhi.bean.TbProductData;
import com.haizhi.dao.ProductDataDao;
import com.haizhi.service.BaseService;
import com.haizhi.service.ProductDataService;
import com.querydsl.core.types.Predicate;
import com.querydsl.jpa.impl.JPAQuery;

/**
 * @author jiangjintai
 *
 */
@Service("productDataService")
public class ProductDataServiceImpl extends BaseServiceImpl<TbProductData, Integer> implements ProductDataService {

	@Autowired
	ProductDataDao productDataDao;
	/* （非 Javadoc）
	 * @see com.haizhi.service.impl.BaseServiceImpl#getDao()
	 */
	@Override
	protected JpaRepository<TbProductData, Integer> getDao() {
		// 
		return productDataDao;
	}
	/* （非 Javadoc）
	 * @see com.haizhi.service.ProductDataService#findTopByTbProduct(com.haizhi.bean.TbProduct)
	 */
	@Override
	public TbProductData findTopByTbProductOrderByDataIdDesc(TbProduct tbProductCopy) {
		// 
		return this.productDataDao.findTopByTbProductOrderByDataIdDesc(tbProductCopy);
	}
	/* （非 Javadoc）
	 * @see com.haizhi.service.ProductDataService#findByMaxVersion(com.haizhi.bean.TbProduct)
	 */
	@Override
	public List<TbProductData> findByMaxVersion(TbProduct tb) {
		List<TbProductData> list = this.productDataDao.findByVersion(tb.getProductId());
		return list;
	}
	/* （非 Javadoc）
	 * @see com.haizhi.service.ProductDataService#findByDataVersionAndTbProductProductId(java.lang.Integer, java.lang.String)
	 */
	@Override
	public List<TbProductData> findByDataVersionAndTbProductProductId(
			Integer dataVersion, Integer productId) {
		// 
		return this.productDataDao.findByDataVersionAndTbProductProductId(dataVersion,productId);
	}

}
